Telephone call processing and switching systems, including call centers of many sorts and having varied architecture, are, at the time of the present patent application, relatively sophisticated, computerized systems. Development and introduction of new systems continues at a rapid pace in an attempt to keep pace with heated demand. Much information on the nature of such telephony hardware and software is available in a number of publications accessible to the present inventor and to those with skill in the art in general. For this reason, much minute detail of known systems is not reproduced here, as to do so would obscure the descriptions of the inventive subject matter.
One document which provides considerable information on intelligent networks is "ITU-T Recommendation Q.1219, Intelligent Network User's Guide for Capability Set 1", dated April, 1994. This document is incorporated herein by reference.
At the time of filing the present patent application there continues to be remarkable growth in telephone routing and call center systems, and in computer integration applied to such systems. Many such systems are known to the present inventor and many have been patented. More and better systems are being developed at the time of the present application, and the present patent application pertains most particularly to methods for simulating telephony systems and CTI with such systems as an aid in development and testing of systems with new and enhanced functionality.
There are many, many different arrangements of equipment for providing telephony and call center functions, and many more functions that may be provided by CTI. There are also, however, a number of commonalties among such systems. For example, all call centers employ some sort of telephony switch for receiving and routing telephone calls. Such switches are made by a number of manufacturers, and, generally speaking, all such switches can function at some level with telephone communication from one to another. That is, a switch from one manufacturer at one location will function with a switch from another manufacturer at another location.
Even though different types and manufacture of switches may operate in conjunction with one another, it is also true that enhanced functionality provided with one switch from one manufacturer may not be operable through a switch from another manufacturer. For this reason, CTI has taken on added importance as a means to provide greatly enhanced functionality, and also, in some instances as a means to integrate different types of switches in advanced systems.
In CTI, typically, given a switch in a system of interest, integration is accomplished by connecting a relatively powerful processor by what is known as a CTI link to the switch, and executing applications on the added processor. The applications can be of many and varied sorts, providing enhanced agent-level routing, for example, and the use of relatively sophisticated databases with telephone switching. Typically, data received with a telephone call at a CTI-enhanced switch may be provided to the CTI processor, and used in a variety of ways. Also typically, after functional manipulation, the CTI processor may command the switch in its various functions, such as routing incoming calls to agents at stations connected by lines having directory numbers. Calls may also be queued, rerouted, routed to remote destinations through dialing functions, and so forth.
Given the relative sophistication of telephony systems, particularly with CTI, the proliferation of switches and other hardware from different manufacturers, and a great demand presently experienced for faster and better systems with new functions, there is a serious impediment to rapid development. This impediment is the need to test new systems, which are in the main software enhancements, in many and varied situations. For example, having developed a new application to run on a CTI processor to serve and command a telephony switch, the developer needs to test and debug the new application in widely varied circumstances. Given the nature of hardware for such systems testing and debugging can become an expensive nightmare requiring arranging and rearranging hardware platforms and software applications to provide the extreme range of conditions that must be tested to be sure a new application may be released with a reasonable expectation of success.
What is clearly needed is method and apparatus which allows a developer to simulate switching and call center systems over a broad range of variables, and to simulate as well a CTI interface for connecting the CTI processor with the simulated system. Such a simulation ability needs to be provided in a way that variables may be easily and conveniently manipulated for thorough testing and debugging of CTI applications.